﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using FeatureModelCore.Optimized;

namespace FeatureModelCore.FMAnalyzer
{
    public class OptimizedAnalyzer
    {
        /// <summary>
        /// All Product. Pre condition is that the optimized feature model has been initially valid.
        /// </summary>
        /// <param name="featureModel"></param>
        /// <returns></returns>
        public static FMProductCollection AllProduct(OptimizedFeatureModel featureModel)
        {
            
            throw new NotImplementedException();
        }

        /// <summary>
        /// 
        /// </summary>
        /// <param name="featureModel"></param>
        /// <returns></returns>
        private static FMProductCollection allProductsForSubTree(OptimizedFeature featureNode)
        {
            List<FMProductCollection> productsSetList = new List<FMProductCollection>();
            foreach(OptimizedFeature childNode in featureNode.ChildrenNodes)
            {
                productsSetList.Add(allProductsForSubTree(childNode));
            }

            
            //FMProductCollection ret = new FMProductCollection();
            throw new NotImplementedException();
        }
    }
}
